/* Lister.h */

#define  dtItemListLength  22   /* Number of Dialog Items */

#include <types.h>
#include <prodos.h>
#include <misctool.h>
#include <quickdraw.h>
#include <window.h>
#include <memory.h>
#include <dialog.h>
#include <menu.h>
#include <control.h>
#include <desk.h>
#include <event.h>
#include <lineedit.h>
#include <misctool.h>
#include <locator.h>
#include <Stdfile.h>
#include <qdaux.h>
#include <print.h>
#include <font.h>
#include <intmath.h>
#include <scrap.h>
#include <texttool.h>

/* These are new calls in System Disk 3.2 that aren't declared in the */
/* regular C interfaces. */

extern pascal Word AlertWindow() inline(0x590E,dispatcher);
extern pascal void PMLoadDriver() inline(0x3513,dispatcher);

#define bothDrivers 0x0        /* used by PMLoadDriver */


/* We define a couple of macros here for clarification purposes.    */
/* In our source code later on, we do some rectangle metrics.       */
/* While QuickDraw II does provide some glue routines for SetRect   */
/* and InsetRect, I don't really want to have to go through the     */
/* Tool Dispatcher to such a trival thing. So I define them as      */
/* macros here.                                                     */

#define SETRECT(rect, _top, _left, _bottom, _right) \
    (rect).h1 = (_left), (rect).v1 = (_top),    \
    (rect).h2 = (_right), (rect).v2 = (_bottom)

#define INSETRECT(rect, _dh, _dv)   \
    (rect).h1 += (_dh), (rect).v1 += (_dv),     \
    (rect).h2 -= (_dh), (rect).v2 -= (_dv)
